package com.zxy.demo.spring;

import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
import org.springframework.stereotype.Component;

import com.zxy.demo.delay.DelayTaskManager;

/**
 * Spring容器启动监听器
 * @author ZENG.XIAO.YAN
 * @date   2018年6月7日
 */
@Component
public class StartupListener implements ApplicationListener<ContextRefreshedEvent>{
	private static boolean isRun = false;
	
	/** Spring容器启动后，会执行该方法 */
	@Override
	public void onApplicationEvent(ContextRefreshedEvent evt) {
		if(!isRun) {
			isRun = true;
			System.out.println("^^^^^^^^-----容器启动-------->>>");
			// 容器启动，那么直接调用任务管理器的start方法
			DelayTaskManager taskManager = DelayTaskManager.getInstance();
			taskManager.start();
		}
	}

}
